#include <Scene.hpp>

Modeling::Scene::~Scene()
{
	if (this->root != NULL)
		delete this->root;

	if (this->animation != NULL)
		delete this->animation;
}

Modeling::Scene::Scene() : root(NULL), animation(NULL)
{}

void Modeling::Scene::animate()
{}

Modeling::Root* Modeling::Scene::createRoot()
{
	if (this->root == NULL)
		this->root = new Modeling::Root();

	return this->root;
}

Modeling::Root* Modeling::Scene::getRoot()
{
	return this->root;
}

Modeling::Animation* Modeling::Scene::createAnimation(unsigned int frames, unsigned int FPS, unsigned int loops)
{
	if (this->animation == NULL)
		this->animation = new Modeling::Animation(frames, FPS, loops);

	return this->animation;
}

Modeling::Animation* Modeling::Scene::getAnimation()
{
	return this->animation;
}
